﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Drawing;
using SRP_LibBusinessRules;
using SRPCENTRIA.Code;
using SRP_LibBusinessEntity;

namespace SRPCENTRIA.ws_appPrivada
{
    public partial class wDireccion : System.Web.UI.Page
    {
        DataTable tablaInformSucursal = new DataTable("tblInformSucursal");
        DataTable tablaTODADireccion = new DataTable("tblTODADireccion");
        protected void Page_Load(object sender, EventArgs e)
        {
            //session_RefDireccion();
            //session_TodaInformTODADireccion();
            if (!Page.IsPostBack)
            {
                if (Session["Usuario"] != null)
                {
                    EUsuario usuario = (EUsuario)Session["Usuario"];
                    ((Label)Master.FindControl("lblusuario")).Text = usuario.VUSU_NOMBRES;
                }
                ListarPrincipalPais();
                CargarDireccionesProveedor(Request.QueryString["idproveedor"].ToString());
                LlenarCampos();
                DesactivarControles();
                //OcultarTabla();
             }
        }


        #region --- Session RefDireccion ----
        private void session_RefDireccion()
        {
            if (Session["tblInformSucursal"] == null)
            {
                Session["tblInformSucursal"] = tablaInformSucursal;
                MostrartablaInformSucursal();
            }
            else
            {
                tablaInformSucursal = (DataTable)Session["tblInformSucursal"];

            }
        }
        #endregion
        #region -- MostrartablaInformSucursal --
        private void MostrartablaInformSucursal()
        {
            //------ Creando Colunar para la Tabla ---------------------------
            tablaInformSucursal.Columns.Add(new DataColumn("colCodTipDirecc", Type.GetType("System.String")));
            //------------------------------------------------------------------------------------------
            tablaInformSucursal.Columns.Add(new DataColumn("colSucursal", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colDireccion", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colPais", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colDepartamento", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colProvincia", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colDistrito", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colTelefono", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colExtension", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colFax", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colExtension2", Type.GetType("System.String")));
            tablaInformSucursal.Columns.Add(new DataColumn("colmail", Type.GetType("System.String")));
            //------------- -------------------------------------------------------------
            tablaInformSucursal.Columns.Add(new DataColumn("colCodUbigeo", Type.GetType("System.String")));
            //------------- -------------------------------------------------------------

            tablaInformSucursal.Columns.Add(new DataColumn("colNumIdet", Type.GetType("System.String")));
            //------------------------------------------------------------------------------------------
            tablaInformSucursal.Columns.Add(new DataColumn("colcodPais", Type.GetType("System.String")));
            //--------------------------------------------------------------------------------------------

            DataRow fila = tablaInformSucursal.NewRow();
            tablaInformSucursal.Rows.Add(fila);
            GvgSucursal.DataSource = tablaInformSucursal;
            GvgSucursal.DataBind();
            tablaInformSucursal.Dispose();
        }
        #endregion

        #region -- Sucursal-
        //protected void GvgSucursal_RowDataBound(object sender, GridViewRowEventArgs e)
        //{
        //    if (e.Row.RowType == DataControlRowType.Footer)
        //    {
        //        NUbigeo objwsGeneric = new NUbigeo();

        //            DropDownList dllGvgPais;
        //            dllGvgPais = (DropDownList)e.Row.FindControl("dllGvgPais");

        //            dllGvgPais.DataSource = objwsGeneric.ListarPais("171","");
        //            dllGvgPais.DataTextField = "VPAI_DESCRIPCION_PAIS";
        //            dllGvgPais.DataValueField = "VPAI_CODIGO_PAIS";
        //            dllGvgPais.DataBind();

        //            DropDownList dllGvgDpto;
        //            dllGvgDpto = (DropDownList)e.Row.FindControl("dllGvgDpto");

        //            dllGvgDpto.DataSource = objwsGeneric.ListarDepartamentos(dllGvgPais.SelectedValue.ToString());
        //            dllGvgDpto.DataTextField = "VUBI_NOMDPTO";
        //            dllGvgDpto.DataValueField = "VUBI_CODIGO_UBIGEO";
        //            dllGvgDpto.DataBind();

        //            DropDownList dllGvgProv;
        //            dllGvgProv = (DropDownList)e.Row.FindControl("dllGvgProv");

        //            dllGvgProv.DataSource = objwsGeneric.ListarProvincias(dllGvgDpto.SelectedValue.ToString());
        //            dllGvgProv.DataTextField = "VUBI_NOMPROV";
        //            dllGvgProv.DataValueField = "VUBI_CODIGO_UBIGEO";
        //            dllGvgProv.DataBind();

        //            DropDownList dllGvgDist;
        //            dllGvgDist = (DropDownList)e.Row.FindControl("dllGvgDist");

        //            dllGvgDist.DataSource = objwsGeneric.ListarDistritos(dllGvgProv.SelectedValue.ToString());
        //            dllGvgDist.DataTextField = "VUBI_NOMDIST";
        //            dllGvgDist.DataValueField = "VUBI_CODIGO_UBIGEO";
        //            dllGvgDist.DataBind();

        //    }
        //}
        protected void btnAgregarSucursal_Click(object sender, EventArgs e)
        {
            GridViewRow filaGrilla = GvgSucursal.FooterRow;
            DataRow fila = tablaInformSucursal.NewRow();
            if (GvgSucursal.Rows.Count == 0)
            {
               //-------- Codigo generado ----
                fila["colCodTipDirecc"] = "";
                //-------------------
                fila["colSucursal"] = "";
                fila["colDireccion"] = "";

                //------------- Información del DropDownlist Ubigeo --------------------------------
                fila["colPais"] = "";
                fila["colDepartamento"] = "";
                fila["colProvincia"] = "";
                fila["colDistrito"] = "";
                //------------- -------------------------------------------------------------
                fila["colTelefono"] = "";
                fila["colExtension"] = "";
                fila["colFax"] = "";
                fila["colExtension2"] = "";
                fila["colmail"] = "";
                //------------- -------------------------------------------------------------
                fila["colCodUbigeo"] = "";
                //----------cod Ident--- --------
                fila["colNumIdet"] = "";
                
            }
            else
            {
                #region -- codigo Mejorar - Codigo generado --
                string V_COD_RUB_PRO;
                string celda1;
                celda1 = tablaInformSucursal.Rows[0].ItemArray[tablaInformSucursal.Columns["colSucursal"].Ordinal].ToString();
                if (celda1 == "")
                {
                    V_COD_RUB_PRO = ("DSU-" + 0);

                }
                else
                {
                    V_COD_RUB_PRO = ("DSU-" + tablaInformSucursal.Rows.Count.ToString());
                }
                fila["colCodTipDirecc"] = V_COD_RUB_PRO;
                #endregion

                fila["colSucursal"] = ((TextBox)filaGrilla.FindControl("txtGvgSucursal")).Text;
                fila["colDireccion"] = ((TextBox)filaGrilla.FindControl("txtGvgDireccion")).Text;

                //------------- Información del DropDownlist Ubigeo --------------------------------
                fila["colPais"] = ((DropDownList)filaGrilla.FindControl("dllGvgPais")).SelectedItem.Text;
                fila["colDepartamento"] = ((DropDownList)filaGrilla.FindControl("dllGvgDpto")).SelectedItem.Text;
                fila["colProvincia"] = ((DropDownList)filaGrilla.FindControl("dllGvgProv")).SelectedItem.Text;
                fila["colDistrito"] = ((DropDownList)filaGrilla.FindControl("dllGvgDist")).SelectedItem.Text;
                //------------- -------------------------------------------------------------
                fila["colTelefono"] = ((TextBox)filaGrilla.FindControl("txtGvgTelefono")).Text;
                fila["colExtension"] = ((TextBox)filaGrilla.FindControl("txtGvgExtension")).Text;
                fila["colFax"] = ((TextBox)filaGrilla.FindControl("txtGvgFax")).Text;
                fila["colExtension2"] = ((TextBox)filaGrilla.FindControl("txtGvgExtension2")).Text;
                fila["colmail"] = ((TextBox)filaGrilla.FindControl("txtGvgMail")).Text;
                //------------- -------------------------------------------------------------
                fila["colCodUbigeo"] = ((DropDownList)filaGrilla.FindControl("dllGvgDist")).SelectedValue.ToString();
                //------------- -------------------------------------------------------------
                fila["colcodPais"] = ((DropDownList)filaGrilla.FindControl("dllGvgPais")).SelectedValue.ToString();
                
                //----------cod Ident--- --------
                fila["colNumIdet"] = Request.QueryString["idproveedor"].ToString();
            }
            int Estado = new int();
            if (validar_CamposdelGri(Estado) == 0) 
            {
                return;
            }


            QuitarTabla();
            tablaInformSucursal.Rows.Add(fila);
            GvgSucursal.DataSource = tablaInformSucursal;
            GvgSucursal.DataBind();
        }
        #endregion

        #region --  Combos Gridview--
        protected void dllGvgPais_SelectedIndexChanged(object sender, EventArgs e)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            GvgSucursal.ShowFooter = true;
            GridViewRow gv_row = GvgSucursal.FooterRow;
            DropDownList dllGvgDpto;
            dllGvgDpto = (DropDownList)gv_row.FindControl("dllGvgDpto");
            dllGvgDpto.DataSource = objwsGeneric.ListarDepartamentos(((DropDownList)sender).SelectedValue.ToString());
            dllGvgDpto.DataTextField = "VUBI_NOMDPTO";
            dllGvgDpto.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllGvgDpto.DataBind();

        }
        protected void dllGvgDpto_SelectedIndexChanged(object sender, EventArgs e)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            GridViewRow gv_row = GvgSucursal.FooterRow;
            DropDownList dllGvgProv;
            dllGvgProv = (DropDownList)gv_row.FindControl("dllGvgProv");

            dllGvgProv.DataSource = objwsGeneric.ListarProvincias(((DropDownList)sender).SelectedValue.ToString());
            dllGvgProv.DataTextField = "VUBI_NOMPROV";
            dllGvgProv.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllGvgProv.DataBind();
        }
        protected void dllGvgProv_SelectedIndexChanged(object sender, EventArgs e)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            GridViewRow gv_row = GvgSucursal.FooterRow;
            DropDownList dllGvgDist;
            dllGvgDist = (DropDownList)gv_row.FindControl("dllGvgDist");

            dllGvgDist.DataSource = objwsGeneric.ListarDistritos(((DropDownList)sender).SelectedValue.ToString());
            dllGvgDist.DataTextField = "VUBI_NOMDIST";
            dllGvgDist.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllGvgDist.DataBind();
        }
        #endregion

        #region -- Llenar Combos Principal--

        private void ListarPrincipalPais()
        {
            NUbigeo objwsGeneric = new NUbigeo();
            dllPPais.DataSource = objwsGeneric.ListarPais("171", "");
            dllPPais.DataTextField = "VPAI_DESCRIPCION_PAIS";
            dllPPais.DataValueField = "VPAI_CODIGO_PAIS";
            dllPPais.DataBind();
        }
        private void ListarPrincipalDpto(string PPais)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            dllPDpto.DataSource = objwsGeneric.ListarDepartamentos(PPais);
            dllPDpto.DataTextField = "VUBI_NOMDPTO";
            dllPDpto.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllPDpto.DataBind();
        }
        private void ListarPrincipalProv(string PProvincia)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            dllPProv.DataSource = objwsGeneric.ListarProvincias(PProvincia);
            dllPProv.DataTextField = "VUBI_NOMPROV";
            dllPProv.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllPProv.DataBind();
        }
        private void ListarPrincipalDist(string PDistrital)
        {
            NUbigeo objwsGeneric = new NUbigeo();
            dllPDist.DataSource = objwsGeneric.ListarDistritos(PDistrital);
            dllPDist.DataTextField = "VUBI_NOMDIST";
            dllPDist.DataValueField = "VUBI_CODIGO_UBIGEO";
            dllPDist.DataBind();
        }

        #endregion
        #region -- Llenar Combos Principal --
        protected void dllPPais_SelectedIndexChanged(object sender, EventArgs e)
        {
            ListarPrincipalDpto(dllPPais.SelectedValue.ToString());
        }
        protected void dllPDpto_SelectedIndexChanged(object sender, EventArgs e)
        {
            ListarPrincipalProv(dllPDpto.SelectedValue.ToString());
        }
        protected void dllPProv_SelectedIndexChanged(object sender, EventArgs e)
        {
            ListarPrincipalDist(dllPProv.SelectedValue.ToString());
        }
        #endregion

        #region -- Quitar fila  --
        private void QuitarTabla()
        {
            string celda1;
            celda1 = tablaInformSucursal.Rows[0].ItemArray[tablaInformSucursal.Columns["colSucursal"].Ordinal].ToString();
            if (celda1 == "")
            {
                tablaInformSucursal.Rows.RemoveAt(0);
            }

        }
        #endregion
        #region -- Ocultar fila  --
        private void OcultarTabla()
        {
            string celda1;
            celda1 = tablaInformSucursal.Rows[0].ItemArray[tablaInformSucursal.Columns["colSucursal"].Ordinal].ToString();
            if (celda1 == "")
            {
                GvgSucursal.Rows[0].Visible = false;
            }
        }
        #endregion

        protected void btnSiguiente_Click(object sender, EventArgs e)
        {
            //Validar_Campos();
            Response.Redirect("wRefComercial.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }
        private void Validar_Campos()
        {

            if (txtPDirec.Text.Trim() == "")
            {
                txtPDirec.Focus();
                txtPDirec.BackColor = Color.Red;
                lblError.Text = "Favor de Ingresar Numero de Identidad valida";
                lblError.Visible = Visible;
                return;
            }
            {
                txtPDirec.BackColor = Color.White;
            }

            if (dllPPais.SelectedValue == "0")
            {
                lblError.Text = "Favor de Seleccionar  Tipo de País";
                dllPPais.Focus();
                lblError.Visible = Visible;
                return;
            }
            if (dllPDpto.SelectedValue == "0")
            {
                lblError.Text = "Favor de Seleccionar Tipo de Departamento";
                dllPDpto.Focus();
                lblError.Visible = Visible;
                return;
            }
            if (dllPProv.SelectedValue == "0")
            {
                lblError.Text = "Favor de Seleccionar Tipo de Provincia";
                dllPProv.Focus();
                lblError.Visible = Visible;
                return;
            }
            if (dllPDist.SelectedValue == "0")
            {
                lblError.Text = "Favor de Seleccionar Tipo de Distrito";
                dllPDist.Focus();
                lblError.Visible = Visible;
                return;
            }
            if (txtPTel.Text.Trim() == "")
            {
                txtPTel.Focus();
                txtPTel.BackColor = Color.Red;
                lblError.Text = "Favor de Ingresar Numero de telefono valida";
                lblError.Visible = Visible;
                return;
            }
            {
                txtPTel.BackColor = Color.White;
            }
            if (txtExtension.Text.Trim() == "")
            {
                txtExtension.Focus();
                txtExtension.BackColor = Color.Red;
                lblError.Text = "Favor de Ingresar Numero de extension valida";
                lblError.Visible = Visible;
                return;
            }
            {
                txtExtension.BackColor = Color.White;
            }
            if (txtPFax.Text.Trim() == "")
            {
                txtPFax.Focus();
                txtPFax.BackColor = Color.Red;
                lblError.Text = "Favor de Ingresar Numero de fax valida";
                lblError.Visible = Visible;
                return;
            }
            {
                txtPFax.BackColor = Color.White;
            }
            if (txtExtension2.Text.Trim() == "")
            {
                txtExtension2.Focus();
                txtExtension2.BackColor = Color.Red;
                lblError.Text = "Favor de Ingresar Numero de extension valida";
                lblError.Visible = Visible;
                return;
            }
            {
                txtExtension2.BackColor = Color.White;
            }
            //string celda1;
            //celda1 = tablaInformSucursal.Rows[0].ItemArray[tablaInformSucursal.Columns["colSucursal"].Ordinal].ToString();
            //if (celda1.Trim() == "")
            //{
            //    lblError.Text = "Favor de Ingresar Por lo menos una fila completa con datos validos ";
            //    GvgSucursal.Focus();
            //    lblError.Visible = Visible;
            //    return;
            //}

            lblError.Visible = false;
            CargarDatosTablaDireccion();
            Response.Redirect("wRefComercial.aspx", true);


        }

        protected void btnAtras_Click(object sender, EventArgs e)
        {
            Response.Redirect("wInformBasica.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

        #region --- Session TodaInformTODADireccion ----
        private void session_TodaInformTODADireccion()
        {
            if (Session["tblTODADireccion"] == null)
            {
                Session["tblTODADireccion"] = tablaTODADireccion;
                MostrartablaTODADireccion();
            }
            else
            {
                tablaTODADireccion = (DataTable)Session["tblTODADireccion"];

            }
        }
        #endregion
        #region -- Tabla  tablaTODADireccion--
        private void MostrartablaTODADireccion()
        {

            //------ Creando Colunar para la Tabla ---------------------------
            tablaTODADireccion.Columns.Add(new DataColumn("colCodTipDireccP", Type.GetType("System.String")));
            //--------------------------------------------------------------------
            tablaTODADireccion.Columns.Add(new DataColumn("colPDirec", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colPPais", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colPDpto", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colPProv", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colPDist", Type.GetType("System.String")));

            tablaTODADireccion.Columns.Add(new DataColumn("colPTel", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colExtension", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colPFax", Type.GetType("System.String")));
            tablaTODADireccion.Columns.Add(new DataColumn("colExtension2", Type.GetType("System.String")));
            //------------- -------------------------------------------------------------
            tablaTODADireccion.Columns.Add(new DataColumn("colNumIdet", Type.GetType("System.String")));
            //------------------------------------------------------------------------------------------


        }
        #endregion
        private void CargarDatosTablaDireccion() 
        {
            if (tablaTODADireccion.Rows.Count == 1)
            {
                tablaTODADireccion.Rows.RemoveAt(0);
            }

            DataRow filaTodo = tablaTODADireccion.NewRow();

            filaTodo["colCodTipDireccP"] = ("DPR-" + 1);
            filaTodo["colPDirec"] = txtPDirec.Text.Trim();
            filaTodo["colPPais"] = dllPPais.SelectedValue.ToString();
            filaTodo["colPDpto"] = dllPDpto.SelectedValue.ToString();
            filaTodo["colPProv"] = dllPProv.SelectedValue.ToString();
            filaTodo["colPDist"] = dllPDist.SelectedValue.ToString();
            filaTodo["colPTel"] = txtPTel.Text.Trim();
            filaTodo["colExtension"] = txtExtension.Text.Trim();
            filaTodo["colPFax"] = txtPFax.Text.Trim();
            filaTodo["colExtension2"] = txtExtension2.Text.Trim();
            //----------cod Ident--- --------
            filaTodo["colNumIdet"] = Request.QueryString["idproveedor"].ToString();         
            tablaTODADireccion.Rows.Add(filaTodo);
        
        }

        private int validar_CamposdelGri(int Estado)
        {
            GridViewRow filaGrillaValidacion = GvgSucursal.FooterRow;
            string Sucursal = ((TextBox)filaGrillaValidacion.FindControl("txtGvgSucursal")).Text;
            string Direccion = ((TextBox)filaGrillaValidacion.FindControl("txtGvgDireccion")).Text;
            //------------- Información del DropDownlist Ubigeo --------------------------------
            string pais = ((DropDownList)filaGrillaValidacion.FindControl("dllGvgPais")).SelectedValue.ToString();
            string Departamento = ((DropDownList)filaGrillaValidacion.FindControl("dllGvgDpto")).SelectedValue.ToString();
            string Provincia = ((DropDownList)filaGrillaValidacion.FindControl("dllGvgProv")).SelectedValue.ToString();
            string Distrito = ((DropDownList)filaGrillaValidacion.FindControl("dllGvgDist")).SelectedValue.ToString();
            //------------- -------------------------------------------------------------
            string Telefono = ((TextBox)filaGrillaValidacion.FindControl("txtGvgTelefono")).Text;
            string Extension = ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension")).Text;
            string Fax = ((TextBox)filaGrillaValidacion.FindControl("txtGvgFax")).Text;
            string Extension2 = ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension2")).Text;
            string Email = ((TextBox)filaGrillaValidacion.FindControl("txtGvgMail")).Text;


            if (Sucursal == "")
            {
                lblError.Text = "Favor de ingresar una sucursal";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgSucursal")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgSucursal")).Focus();
                return Estado = 0;
            }
            else { ((TextBox)filaGrillaValidacion.FindControl("txtGvgSucursal")).BackColor = Color.White; }
            if (Direccion == "")
            {
                lblError.Text = "Favor de ingresar una Direccion";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgDireccion")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgDireccion")).Focus();
                return Estado = 0;
            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgDireccion")).BackColor = Color.White; }
            if (pais == "0")
            {
                lblError.Text = "Favor de seleccion un Pais";
                lblError.Visible = true;
                ((DropDownList)filaGrillaValidacion.FindControl("dllGvgPais")).Focus();
                return Estado = 0;
            }
            if (Departamento == "0")
            {
                lblError.Text = "Favor de seleccion un Departamento";
                lblError.Visible = true;
                ((DropDownList)filaGrillaValidacion.FindControl("dllGvgDpto")).Focus();
                return Estado = 0;
            }
            if (Provincia == "0")
            {
                lblError.Text = "Favor de seleccion un Provincia";
                lblError.Visible = true;
                ((DropDownList)filaGrillaValidacion.FindControl("dllGvgProv")).Focus();
                return Estado = 0;

            }

            if (Distrito == "0")
            {
                lblError.Text = "Favor de seleccion un Distrito";
                lblError.Visible = true;
                ((DropDownList)filaGrillaValidacion.FindControl("dllGvgDist")).Focus();
                return Estado = 0;
            }
            if (Telefono == "")
            {
                lblError.Text = "Favor de ingresar una Telefono";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgTelefono")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgTelefono")).Focus();
                return Estado = 0;
            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgTelefono")).BackColor = Color.White; }
            if (Extension == "")
            {
                lblError.Text = "Favor de ingresar una Extension";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension")).Focus();
                return Estado = 0;
            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension")).BackColor = Color.White; }
            if (Fax == "")
            {
                lblError.Text = "Favor de ingresar una Fax";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgFax")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgFax")).Focus();
                return Estado = 0;

            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgFax")).BackColor = Color.White; }
            if (Extension2 == "")
            {
                lblError.Text = "Favor de ingresar una Extension2";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension2")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension2")).Focus();
                return Estado = 0;
            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgExtension2")).BackColor = Color.White; }

            if (Email == "")
            {
                lblError.Text = "Favor de ingresar una Email";
                lblError.Visible = true;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgMail")).BackColor = Color.Red;
                ((TextBox)filaGrillaValidacion.FindControl("txtGvgMail")).Focus();
                return Estado = 0;
            }{ ((TextBox)filaGrillaValidacion.FindControl("txtGvgMail")).BackColor = Color.White; }

            lblError.Visible = false;
            return Estado = 1;
        }

        private void LlenarCampos()
        {
            if (tablaTODADireccion.Rows.Count == 1)
            {

                txtPDirec.Text = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colDireccion"].Ordinal].ToString();
                dllPPais.SelectedValue = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colPais"].Ordinal].ToString();
                ListarPrincipalDpto(dllPPais.SelectedValue.ToString());
                dllPDpto.SelectedValue = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colDpto"].Ordinal].ToString();
                ListarPrincipalProv(dllPDpto.SelectedValue.ToString());
                dllPProv.SelectedValue = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colProv"].Ordinal].ToString();
                ListarPrincipalDist(dllPProv.SelectedValue.ToString());

                dllPDist.SelectedValue = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colDist"].Ordinal].ToString();
                txtPTel.Text = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colTelefono"].Ordinal].ToString();
                txtExtension.Text = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colExtension"].Ordinal].ToString();
                txtPFax.Text = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colFax"].Ordinal].ToString();
                txtExtension2.Text = tablaTODADireccion.Rows[0].ItemArray[tablaTODADireccion.Columns["colExtension2"].Ordinal].ToString();
                tablaTODADireccion.Dispose();
            }
        }

        #region "Custom Methods"
        private void CargarDireccionesProveedor(string identificacion) 
        {
            NProveedor proveedor = new NProveedor();
            DataTable dt = proveedor.DireccionesProveedor(identificacion);

            DataView dvprincipal = new DataView(dt,"colCodTipDirecc='" + Constanst.Tipo_direccion_principal + "'","",DataViewRowState.CurrentRows);
            DataView dvsucursal = new DataView(dt, "colCodTipDirecc='" + Constanst.Tipo_direccion_Sucursal + "'", "", DataViewRowState.CurrentRows);
            
            tablaTODADireccion = dvprincipal.ToTable();
            GvgSucursal.DataSource = dvsucursal;
            GvgSucursal.DataBind();
        }

        private void DesactivarControles() 
        {
            txtPDirec.Enabled = false;
            txtExtension.Enabled = false;
            txtExtension2.Enabled = false;
            txtPFax.Enabled = false;
            txtPTel.Enabled = false;
            dllPPais.Enabled = false;
            dllPDpto.Enabled = false;
            dllPProv.Enabled = false;
            dllPDist.Enabled = false;

        }

        #endregion

        protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wInformBasica.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

        protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wDireccion.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

        protected void ImageButton3_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wRefComercial.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

        protected void ImageButton4_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wInformPersonas.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

        protected void ImageButton6_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wInformFinanciera.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);

        }

        protected void ImageButton5_Click(object sender, ImageClickEventArgs e)
        {
            Response.Redirect("wInformTributaria.aspx?idproveedor=" + Request.QueryString["idproveedor"].ToString(), true);
        }

    }
}